package fons.navigator.ui.configurations;

import java.awt.event.ActionListener;
import java.util.Collection;

import javax.swing.JComponent;

import fons.navigator.util.settings.Configuration;
import fons.util.Pair;

public interface ConfigurationComponentFactory {
	void use (Configuration configuration, String settingName);
	
	JComponent getLabel();
	JComponent getInput();
	String getInfo();
	ActionListener createActionListenerFor(final JComponent component);
	
	Class<?> handles();

	Collection<Pair<JComponent, ActionListener>> getAdditionalComponents();
}
